package com.gr.experimental.model.impl.distr;

import java.util.Map;

/**
 * @author karol
 *
 */
public interface Context {

	boolean isReturnCalled();
	
	Descriptor getDescriptor(String identifier);

	Map<String, Descriptor> getAllDescriptorMap();
	
	Map<String, Descriptor> getLocalDescriptorMap();

	void setReturnCalled(boolean returnCalled);

	void addDescriptor(Descriptor descriptor);
	
	Object getVariableValue(String identifier);
	
	void setVariableValue(String identifier, Object value);
	
	Descriptor getReturnDescriptor();
	
	Context getSuperContext();

	void setReturnDescriptor(Descriptor descriptor);
}
